package com.ruoyi.psi.sale.collection.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.Serializers;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotNull;
import java.sql.Timestamp;

/**
 * 销售收款详细
 * psi_sale_collection_list
 * @author Drj 2021/6/28
 * 修改：lsy 2021.7.17
 */
public class CollectionList extends BaseEntity {
    /**
     * 销售收款编号
     */
    @NotNull(message = "销售收款编号不能为空")
    @ApiModelProperty(value = "销售收款编号", required = true)
    private String collectionId;
    /**
     * 销售订单编号
     */
    @NotNull(message = "销售订单编号不能为空")
    @ApiModelProperty(value = "销售订单编号", required = true)
    private String saleOrderId;
    /**
     * 单据类型
     * 0：销售订单 1：销售退货
     */
    @NotNull(message = "单据类型不能为空")
    @ApiModelProperty(value = "单据类型 0：销售订单 1：销售退货", required = true)
    private String collectionType;
    /**
     * 订单金额
     */
    @ApiModelProperty("订单金额")
    private Double salePriceTotal;
    /**
     * 订单出库金额
     */
    @ApiModelProperty("订单出库金额")
    private Double  saleDeliveryPrice;
    /**
     * 订单已收金额
     */
    @ApiModelProperty("订单已收金额")
    private Double receivedAmount;
    /**
     * 本次收款金额
     */
    @ApiModelProperty("本次收款金额")
    private Double collectionAmount;
    /**
     * 销售订单时间
     */
    @ApiModelProperty("销售订单时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private  java.sql.Timestamp createTime;
    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remark;


    public String getCollectionId() {
        return collectionId;
    }

    public void setCollectionId(String collectionId) {
        this.collectionId = collectionId;
    }

    public String getSaleOrderId() {
        return saleOrderId;
    }

    public void setSaleOrderId(String saleOrderId) {
        this.saleOrderId = saleOrderId;
    }

    public Double getSalePriceTotal() {
        return salePriceTotal;
    }

    public void setSalePriceTotal(Double salePriceTotal) {
        this.salePriceTotal = salePriceTotal;
    }

    public Double getSaleDeliveryPrice() {
        return saleDeliveryPrice;
    }

    public void setSaleDeliveryPrice(Double saleDeliveryPrice) {
        this.saleDeliveryPrice = saleDeliveryPrice;
    }

    public Double getReceivedAmount() {
        return receivedAmount;
    }

    public void setReceivedAmount(Double receivedAmount) {
        this.receivedAmount = receivedAmount;
    }

    public Double getCollectionAmount() {
        return collectionAmount;
    }

    public void setCollectionAmount(Double collectionAmount) {
        this.collectionAmount = collectionAmount;
    }

    @Override
    public Timestamp getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Timestamp createTime) {
        this.createTime = createTime;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getCollectionType() {
        return collectionType;
    }

    public void setCollectionType(String collectionType) {
        this.collectionType = collectionType;
    }
}
